package agent.moves;

import javax.media.j3d.Transform3D;

import labyrinth.Position;

/**
 * The interface describing an agent move
 * 
 * @author Johannes Kulick
 * @version 0.1
 * @licence GNU Lesser Genaral Public Licence
 */
public interface IAgentMove {
	/**
	 * Returns the position of the agent after this move
	 * 
	 * @return An Position object representing the <x,y> coordinate
	 */
	public Position getNextPosition();

	/**
	 * The transformation, which moves the agent model to the appropriate
	 * position int the 3D model
	 * 
	 * @return a Transform3D object, representing the transformation
	 */
	public Transform3D getTransformation();
}
